package com.qianda.qdminiapp.domain.model.order;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 毛巾购买订单
 * </p>
 *
 * @author cw
 * @since 2019-08-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class QqdOrderTowel extends Model<QqdOrderTowel> {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 订单主表id
     */
    private Long orderId;

    private String orderNo;
    /**
     * 订单用户id
     */
    private Long orderUserId;

    /**
     * 订单设备id
     */
    private Long orderDeviceId;

    private Long companyId;//公司id

    private Long storeId;
    /**
     * 订单金额
     */
    private BigDecimal orderAmt;

    private Integer orderCount;
    /**
     * 订单出巾状态 1:待出巾   3：出巾中   5：出巾完成   7:出巾异常
     */
    private Integer orderStatus;

    /**
     * 订单异常类型: 0：缺巾  3：卷巾处卡巾 5:切巾电机异常 7：切巾处卡巾  9:IC卡模块错误  11:棉巾数量不足
     */
    private Integer orderErrorType;

    /**
     * 订单支付方式: 0:微信   1:余额   2：千豆
     */
    private Integer orderPayType;

    /**
     * 订单支付状态  0:待支付   1:已支付
     */
    private Integer orderPayStatus;

    /**
     * 订单支付时间
     */
    private LocalDateTime orderPayTime;

    /**
     * 毛巾长度
     */
    private Integer orderDeviceLength;

    /**
     * 毛巾类型  0:干毛巾  1:湿纸巾
     */
    private Integer orderTowelType;

    /**
     * 状态 0:正常  1：删除
     */
    private Integer status;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    private LocalDateTime updateTime;

    /**
     * 创建人
     */
    private Long createBy;

    /**
     * 修改人
     */
    private Long updateBy;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
